Partially observed markov decision process model and its use

ABSTRACT

A method for selecting an action, includes reading, into a memory, a Partially Observed Markov Decision Process (POMDP) model, the POMDP model having top-k action IDs for each belief state, the top-k action IDs maximizing expected long-term cumulative rewards in each time-step, and k being an integer of two or more, in the execution-time process of the POMDP model, detecting a situation where an action identified by the best action ID among the top-k action IDs for a current belief state is unable to be selected due to a constraint, and selecting and executing an action identified by the second best action ID among the top-k action IDs for the current belief state in response to a detection of the situation. The top-k action IDs may be top-k alpha vectors, each of the top-k alpha vectors having an associated action, or identifiers of top-k actions associated with alpha vectors.

BACKGROUND Technical Field

The present invention generally relates to a Partially Observed MarkovDecision Process (herein after also referred to as “POMDP”) model andits use.

Description of the Related Art

It is a difficult problem to determine which action a system should takein a given situation in spoken dialog systems, which help a useraccomplish a task using a spoken language, because automatic speechrecognition is unreliable and, therefore, the state of the conversationcan never be known with certainly. The task mentioned above may be anoperation of a robot or an operation completed by a natural conversationdialog.

The POMDP has been recently used for solving this problem. Many studyreports describe the POMDP model.

SUMMARY

According to an embodiment of the present invention, acomputer-implemented method for selecting an action is provided. Themethod comprises reading, into a memory, a Partially Observed MarkovDecision Process (POMDP) model, the POMDP model having top-k action IDsfor each of belief states, the top-k action IDs maximizing expectedlong-term cumulative rewards in each time-step, and k being an integerof two or more; in the execution-time process of the POMDP model,detecting a situation where an action identified by the best action IDamong the top-k action IDs for a current belief state is unable to beselected due to constraint; and selecting and executing an actionidentified by the second best action ID among the top-k action IDs forthe current belief state in response to a detection of the situation.The top-k action IDs may be top-k alpha vectors, each of the top-k alphavectors having an associated action; or identifiers of top-k actionsassociated with alpha vectors.

According to another embodiment of the present invention, a system, suchas a computer system, comprising a processor and a memory storing aprogram of instructions executable by the processor to perform one ormore methods described herein is provided.

According to another embodiment of the present invention, a computerprogram product comprising a non-transitory computer readable storagemedium storing a program of instructions executable by a system toperform one or more methods described herein is provided.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure will provide details in the following description ofpreferred embodiments with reference to the following figures.

FIG. 1 illustrates an exemplified basic block diagram of a computerhardware used in an embodiment of the present invention;

FIGS. 2A and 2B illustrate a block/flow diagram of a process forbuilding a POMDP model;

FIG. 3 illustrates a block/flow diagram of a process for selecting anaction, using the POMDP model;

FIGS. 4A and 4B illustrate embodiment block/flow diagram of a processfor building a POMDP model;

FIG. 5 illustrates a block/flow diagram of a process for selecting anaction, using the POMDP model;

FIG. 6A illustrates a graph representing a set of the top-k (or k=2)alpha vectors for each of belief states, the set being generatedaccording to an embodiment of the present invention;

FIG. 6B illustrates a graph representing a set of the top-k (or k=2)alpha vectors for each of belief states, the set being generatedaccording to an embodiment described in FIGS. 2A, 2B and 3 of thepresent invention;

FIG. 6C illustrates a graph representing a set of the top 2^(nd) (ork=2) alpha vectors for each of belief states, the set being generatedaccording to another embodiment described in FIGS. 4A, 4B and 5 of thepresent invention;

FIG. 7 illustrates of an overall functional block/flow diagram of asystem used in accordance with an embodiment described in FIGS. 2A, 2Band 3 or FIGS. 4A, 4B and 5 of the present invention;

FIG. 8 illustrates an example of parameters which is used in buildingthe POMDP model for a natural conversation dialog, in accordance with anembodiment of the present invention;

FIG. 9A illustrates an example of a graph representing a set of thetop-1^(st) alpha vectors for each of belief states, after pruningaccording to the prior art;

FIG. 9B illustrates an example of a graph representing the best alphavector for the corresponding belief state, among the set of thetop-1^(st) alpha vectors for each of belief states, after pruningaccording to the prior art;

FIG. 9C illustrates an example of a graph representing the top 2^(nd)best alpha vectors for the corresponding belief state, among the set ofthe top-1^(st) alpha vectors for each of belief states, after pruningaccording to the prior art; and

FIG. 9D illustrates an example of a graph representing the 2^(nd) bestaction for the corresponding belief state, among a se of the actionscorresponding to the set of the top-1^(st) alpha vectors for each ofbelief states, after pruning according to the prior art.

DETAILED DESCRIPTION

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

To define more clearly the terms used herein, the following exemplifieddefinitions are provided, but the meaning of the terms should beinterpreted broadly as known to the technical field to which the presentinvention relates.

The term “POMDP” is a type of reinforcement learning and is a frameworkfor an action selection problem in an environment with hidden states.

The POMDP is defined as the following tuple, {S, A, T, R, O, Z, λ, b₀}:where S denotes a (finite) set of states describing the agent's (orsystem's) world; A denotes a set of discrete actions that an agent maytake; T denotes a transition probability, P(s′|s, a); R denotes theexpected (immediate, real-valued) reward, r(s, a); O denotes a set ofobservations the gent can receive about the world; Z denotes anobservation probability, P(o′|s′, a); A denotes a geometric discountfactor, 0≤λ≤1; and b₀ denotes an initial belief state, b₀(s).

The POMDP may operate as follows: At each time-step, the world is insome unobserved state, s∈S; since s is not exactly known, a distributionover states is maintained called “a belief state”, b, with initialbelief state, b₀. In a case where b₀(s) is mentioned, b₀(s) indicatesthe probability of being in a particular state, s. Based on b, thesystem selects an action, a∈A, receives a reward, r(s, a), and thentransitions to an unobserved state s′. The unobserved state, s′, dependsonly on the state, s, and the action, a. At each time-step, the briefstate distribution b is updated.

With reference now to FIG. 1, FIG. 1 illustrates an exemplified basicblock diagram of a computer hardware used in an embodiment of thepresent invention.

A computer (101) may be, for example, but is not limited to, a desktop,a laptop, a notebook, a tablet or a server computer. The server computermay be, for example, but is not limited to, a workstation, a rack-mounttype server, a blade type server, or a mainframe server and may run, forexample, a hypervisor for creating and running one or more virtualmachines. The computer (101) may comprise one or more CPUs (102) and amain memory (103) connected to a bus (104). The CPU (102) may bepreferably based on a 32-bit or 64-bit architecture. The CPU (102) maybe, for example, but is not limited to, the Power® series ofInternational Business Machines Corporation; the Core i™ series, theCore 2™ series, the Atom™ series, the Xeon™ series, the Pentium® series,or the Celeron® series of Intel Corporation; or the Phenom™ series, theAthlon™ series, the Turion™ series, or Sempron™ of Advanced MicroDevices, Inc. (“Power” is registered trademark of International BusinessMachines Corporation in the United States, other countries, or both;“Core i”, “Core 2”, “Atom”, and “Xeon” are trademarks, and “Pentium” and“Celeron” are registered trademarks of Intel Corporation in the UnitedStates, other countries, or both; “Phenom”, “Athlon”, “Turion”, and“Sempron” are trademarks of Advanced Micro Devices, Inc. in the UnitedStates, other countries, or both).

A display (106), such as a liquid crystal display (LCD), may beconnected to the bus (104) via a display controller (105). The display(106) may be used to display, for management of the computer(s),information on a computer connected to a network via a communicationline and information on software running on the computer using anappropriate graphics interface. A disk (108), such as a hard disk or asolid state drive (SSD), and a drive (109), such as a CD, a DVD, or a BD(Blu-ray disk) drive, may be connected to the bus (104) via an SATA orIDE controller (107). Moreover, a keyboard (111) and a mouse (112) maybe connected to the bus (104) via a keyboard-mouse controller (110) orUSB bus (not shown).

An operating system, programs providing Windows®, UNIX® Mac OS®, Linux®,or a Java® processing environment, Java® applications, a Java® virtualmachine (VM), and a Java® just-in-time (JIT) compiler, such as J2EE®,other programs, and any data may be stored in the disk (108) to beloadable to the main memory. (“Windows” is a registered trademark ofMicrosoft corporation in the United States, other countries, or both;“UNIX” is a registered trademark of the Open Group in the United States,other countries, or both; “Mac OS” is a registered trademark of AppleInc. in the United States, other countries, or both; “Linux” is aregistered trademark of Linus Torvalds in the United States, othercountries, or both; and “Java” and “J2EE” are registered trademarks ofOracle America, Inc. in the United States, other countries, or both).

The drive (109) may be used to install a program, such as the computerprogram of an embodiment of the present invention, readable from aCD-ROM, a DVD-ROM, or a BD to the disk (108) or to load any datareadable from a CD-ROM, a DVD-ROM, or a BD into the main memory (103) orthe disk (108), if necessary.

A communication interface (114) may be based on, for example, but is notlimited to, the Ethernet® protocol. The communication interface (114)may be connected to the bus (104) via a communication controller (113),physically connects the computer (101) to a communication line (115),and may provide a network interface layer to the TCP/IP communicationprotocol of a communication function of the operating system of thecomputer (101). In this case, the communication line (115) may be awired LAN environment or a wireless LAN environment based on wirelessLAN connectivity standards, for example, but is not limited to, IEEE®802.11a/b/g/n (“IEEE” is a registered trademark of Institute ofElectrical and Electronics Engineers, Inc. in the United States, othercountries, or both).

The idea of an embodiment of the present invention is on the basis ofthe following perceptions.

In a spoken dialog by a POMDP model, since the best action whichmaximizes long-term cumulative rewards is selected for a probabilisticbelief state, the same action is selected for a (the) near belief state.Accordingly, the same action can be repeated or selected many times.

For example, in the following Non-patent Literature [A]: Jason D.Williams et al., “Partially observable Markov decision processes forspoken dialog systems”, Computer Speech & Language, Vol. 21, p. 393-422,2007, FIG. 3 describes the optimal policy for an example voice mailspoken dialog system POMDP in which an action for a save or delete taskis executed, and FIG. 4 describes an evolution of the belief state inthe example voicemail spoken dialog system POMDP. In the task describedin FIG. 4 above, the example process repeats the same action, “ask”,three times to determine a final save/delete decision.

In a natural conversation among a plurality of users, if the state(intent) of user that you are talking to is unclear, you may repeat thesame question in a different way. In the POMDP model, however, such aconstraint in execution-time process where exactly the same question isnot repeated is hard to be previously included into the POMDP model.

Further, the calculation of the best actions for a belief state has aheavy computational complexity. Since the best actions must becalculated in advance during building the POMDP model, it is difficultto take the constraint in the execution-time process into considerationin the calculation time.

In a case where the constraint used in the execution-time process of thePOMDP model can be previously predicted, the constraint can be takeninto consideration in building time of the POMDP model. In such a case,however, the number of states increases and, accordingly, computingcomplexity also increases. Further, since the number of statesincreases, accuracy of estimation of state transition probability andobservation probability become worse with the same amount of data.

Accordingly, it may be required to cope with such constraint. In otherwords, even in a case where the best action for a current belief statecannot be selected due to constraints in the execution-time process ofthe POMDP model, it may be required to select an action appropriate tothe current belief state.

In a case where an action identified by the best alpha vector among theset of top-1^(st) alpha vectors for each of belief states is unable tobe selected due to constraints in an execution-time process of the POMDPmodel, the system may select another alpha vector among the set oftop-1^(st) alpha vectors for each of belief states. For example, in asituation that an action, “ask_a”, is identified by the best alphavector for a certain belief state, among the set of top-1^(st) alphavectors for each of belief states, the system may select another action,“do_delete”, which is identified by the best alpha vector for anotherbelief state, among the set of top-1^(st) alpha vectors for each ofbelief states. However, under a condition that the action, “do_delete”,is significantly inappropriate for a current belief state, the systemcannot select an executable action. This might cause the system toabnormally terminate a natural conversation dialog.

This problem is also true of the following Patent Literature [1]: JP2012-190062 A. This is because Patent Literature [1] describes apoint-based value iteration algorithm and use this algorithm without anymodification, where the point-based value iteration algorithm isdescribed, for example, in the following Non-patent Literature [B]:Hanna Kurniawati et al., “SARSOP: Efficient Point-Based POMDP Planningby Approximating Optimally Reachable Belief Spaces”, Proc. Robotics:Science and Systems, 2008.

Further, Patent Literature [1] does not cope with such constraint.

Prior to describing an embodiment of the present invention, pruning orselection of alpha vectors in building time of the POMDP model generatedaccording to the prior art will be described below by referring to FIG.8 and FIGS. 9A to 9D.

According to the prior art, only the top-1^(st) alpha vectors for eachbelief state is selected during building the POMDP model. In otherwords, alpha vectors other than the top-1^(st) alpha vectors for eachbelief state are pruned during building the POMDP model.

First, a system prepares input data for building the POMDP model. Anexample of the input data will be explained by referring to FIG. 8.

With reference now to FIG. 8, FIG. 8 illustrates an example ofparameters which may be used in building the POMDP model for a naturalconversation dialog.

FIG. 8 shows the following parameters, {S, A, T, R, O, Z, λ, b₀}, inwhich the following parameters, {S, A, T, R, O, Z}, are input to a POMDPsolver. The POMDP solver solves problems that are formulated as POMDP.The POMDP solver uses the basic dynamic programming approach for allalgorithms, solving one stage at a time working backwards in time. Anyalgorithm for the POMDP solver can be used herein.

For building the POMDP model, the parameters, {S, A, T, R, O, Z}, areinputted to the POMDP solver. The details of these parameters will beexplained below.

States: S={save, delete}; where S denotes that the voice mail should besaved or deleted.

Actions: A={ask_a, ask_b, do_save, do_delete}; where Action, {ask_a},denotes that “Do you want to save or delete the mail?”, this questioncan be expected to receive an accurate response; Action, {ask_b},denotes that “Would you like to keep or discard the mail?”, thisquestion cannot be relatively expected to receive an accurate response;Action,{do_save}, denotes that an agent makes an action of saving themail; and Action, {do_delete}, denotes that an agent makes an action ofdeleting the mail.

Transition function: T (s, a, s′)=Pr (s′|S, a); The items in Table(801), (save, do_save), (save, do_delete), (delete, do_save) and(delete, do_delete), has the numeral, 0.5. This means that afterexecution of the action, “do_save” or “do_delete”, the belief state goesback to the initial state, b₀.

Reward function: R(s, a); Each of the items in Table (802), (save,do_save) and (delete, do_delete), has the numeral, 10. This means that10 rewards are given in a case where the action of “save” or “delete” iscorrectly done; Each of the items in Table (802), (save, do_delete) and(delete, do_save), has the numeral, −100. This means that −100 rewardsare given in a case where the action of “save” or “delete” iserroneously done.

Observations: O={O_save, O_delete}; The observations denotes a responsefrom a user.

Observation function: Z (s′, A, O′)=Pr (o′|s′, a); The items in Table(803), (save, do_save), (save, do_delete), (delete, do_save) and(delete, do_delete), has the numeral, 0.5. This means that afterexecution of the action, “do_save” or “do_delete”, the belief state goesback to the initial state, b₀. The items in Table (803), (save, ask_a),(save, ask_b), (delete, ask_a) and (delete, ask_b), show that, by“ask_a”, more accurate answer will be received than “ask_b”.

The system calculates a set of the alpha vectors for the POMDP modelfrom the input data, using a POMDP solver, to build the POMDP model. Thesystem outputs a policy, i.e., a set of the top-1^(st) alpha vectors.The alpha vectors, which were output from the POMDP solver, are a set ofthe top-1^(st) alpha vectors for each belief state among the calculatedalpha vectors in each time-step. In other words, alpha vectors otherthan the set of the top-1^(st) alpha vectors for each belief state arepruned during the building the POMDP model.

FIGS. 9A to 9D each illustrate a graph generated according to the priorart, the graph representing a set of top-1^(st) alpha vectors for eachbelief state.

With reference now to FIG. 9A, FIG. 9A illustrates an example of a graphrepresenting a set of the top-1^(st) alpha vectors for each belief stateafter pruning according to the prior art.

According to the prior art, alpha vectors other than a set of thetop-1^(st) alpha vectors for each belief state are pruned duringbuilding the POMDP model.

A table (981) shows a set of top-1^(st) alpha vectors for each beliefstate, i.e., the output of the POMDP solver. The set of the top-1^(st)alpha vectors for each belief state is a result after 664 updates ofeach of the belief states and obtained by pruning alpha vectors otherthan the set of the top-1^(st) alpha vectors for each belief state. Inother words, the top-1^(st) alpha vectors for each belief state isiteratively calculated until alpha vectors are converged.

The table (981) shows five alpha vectors a, b, c, d and e. Each of thefive alpha vectors is associated with a respective action, as follows:each of the alpha vectors a, b and c is associated with the same action,“ask_a”; the alpha vector d is associated with the action, “do_save”;and the alpha vector e is associated with the action, “do_delete”.

The graph (901) shows an x-axis representing “belief states”, i.e.,“save (S)” and “delete (D)” and a y-axis representing the expectedcumulative rewards, V*(b).

In the graph (901), the lines a, b, c, d and e correspond to the alphavectors a, b, c, d and e, respectively. Accordingly, the lines a, b, c,d and e are associated with the actions, “ask_a”, “ask_a”, “ask_a”,“do_save” and “do_delete”, respectively.

In each of the following FIGS. 9B, 9C and 9D, a graph (902, 903 and 904,respectively) is shown in which a policy is illustrated with boldcombined lines, where the graph (902, 903 and 904, respectively)corresponds to the graph (901).

With reference now to FIG. 9B, FIG. 9B illustrates an example of a graphrepresenting the best alpha vector for the corresponding belief state,among the set of the top-1^(st) alpha vectors for each belief state, thebest alpha vector maximizing expected long term cumulative rewards.

The graph (902) corresponds to the graph (901) described in FIG. 9A,except that the bold combined lines are illustrated. A table (982)corresponds to the table (981) described in FIG. 9A. The alpha vectorsin the table (982) correspond to those in the table (981) described inFIG. 9A.

In the graph (902), the bold combined lines show the best alpha vectorfor the corresponding belief state, among the set of the top-1^(st)alpha vectors for each belief state. The bold combined lines also show apolicy. From the left to right in the bold combined lines, each part onthe bold combined lines corresponds to alpha vectors d, b, a, c and e isselected as the best alpha vector for the corresponding belief stateamong the set of the top-1^(st) alpha vectors for each belief state. Thealpha vector d is associated with the action, “do_save”, and, therefore,the part on the bold combined lines corresponding to the alpha vector dis associated with the action, “do_save”. Each of the alpha vectors b, aand c is associated with the same action, “ask_a”, and, therefore, eachpart on the bold combined lines corresponding to the alpha vectors b, aand c is associated with the same action, “ask_a”. The alpha vector d isassociated with the action, “do_save”, and, therefore, the part on thebold combined lines corresponding to the alpha vector d is associatedwith the action, “do_save”. The alpha vector e is associated with theaction, “do_delete”, and, therefore, the part on the bold combined linescorresponding to the alpha vector e is associated with the action,“do_delete”.

Accordingly, the best alpha vector for the corresponding belief state,among the set of the top-1^(st) alpha vectors for each belief state isprovided according to the prior art, as illustrated in the graph (902).

With reference now to FIG. 9C, FIG. 9C illustrates an example of a graphrepresenting the 2^(nd) best alpha vector for the corresponding beliefstate, among the set of the top-1^(st) alpha vectors for each of beliefstates, the 2^(nd) best alpha vector secondary maximizing expected longterm cumulative rewards.

The graph (903) corresponds to the graph (901) described in FIG. 9A,except that the bold combined lines and the bold combined dot-lines areillustrated. A table (983) corresponds to the table (981) described inFIG. 9A. The alpha vectors in the table (983) corresponds to those inthe table (981) described in FIG. 9A.

In the graph (903), the bold combined dot-lines correspond to the boldcombined lines in the graph (902) described in FIG. 9B, where the boldcombined dot-lines described in the graph (903) are shown for thepurpose of comparing this bold combined dot-lines with the bold combinedlines in the graph (902) described in FIG. 9B.

In the graph (903), the bold combined lines show the 2^(nd) best alphavector for the corresponding belief state among the set of thetop-1^(st) alpha vectors for each of belief states. These bold combinedlines also show a policy. From the left to right in the bold combinedlines, each part on the bold combined lines corresponding to the alphavectors b, d, a, b, c, a, e, and c is selected as the 2^(nd) best alphavector (or the policy) for the corresponding belief state, among the setof the top-1^(st) alpha vectors for each belief state. Each of the alphavectors b, a and c is associated with the same action, “ask_a”, and,therefore, each part on the bold combined lines corresponding to thealpha vectors b, a and c is associated with the same action, “ask_a”.The alpha vector d is associated with the action, “do_save”, and,therefore, the part on the bold combined lines corresponding to thealpha vector d is associated with the action, “do_save”. The alphavector e is associated with the action, “do_delete”, and, therefore, thepart on the bold combined lines corresponding to the alpha vector e isassociated with the action, “do_delete”.

Accordingly, the 2^(nd) best alpha vector for the corresponding beliefstate among the set of the top-1^(st) alpha vectors for each beliefstate is provided according to the prior art, as illustrated in thegraph (903).

According to the graph (903), in a case where the best alpha vectoramong the set of the top-1^(st) alpha vectors for each belief state isnot selected due to constraints in execution-time process of the POMDPmodel, the 2^(nd) best alpha vector for the corresponding belief stateamong the set of the top-1^(st) alpha vectors for each belief state isselected as a policy.

Comparing, from the left to right in the graph (903), the bold combinedlines with the bold combined dot-lines, the action, “ask_a”,corresponding to the part b on the bold combined lines is selectedinstead of the action, “do_save”, corresponding to the part d on thebold combined dot-lines; the action, “do_save”, corresponding to thepart d on the bold combined lines and the action, “ask_a”, correspondingto the part a on the bold combined lines are selected instead of theaction, “ask_a”, corresponding to the part b on the bold combineddot-lines; the action, “ask_a”, corresponding to the part b on the boldcombined lines and the action, “ask_a”, corresponding to the part c onthe bold combined lines are selected instead of the action, “ask_a”,corresponding to the part a on the bold combined dot-lines; the action,“ask_a”, corresponding to the part a on the bold combined lines and theaction, “do_delete”, corresponding to the part e on the bold combinedlines are selected instead of the action, “ask_a”, corresponding to thepart c on the bold combined dot-lines; and the action, “ask_a”,corresponding to the part c on the bold combined lines is selectedinstead of the action, “do_delete”, corresponding to the part e on thebold combined dot-lines.

Accordingly, in a case where the 2^(nd) best alpha vector for thecorresponding belief state, among the set of the top-1^(st) alphavectors for each belief state is selected as illustrated in the graph(903), the same action may be selected on the parts a, b, c from theleft to right on the bold combined lines in the graph (903), compared tothe bold combined dot-lines. Meanwhile, a different action may beselected on the parts b, d, and e, c from the left to right on the boldcombined lines in the graph (903), compared to the bold combineddot-lines. This is because, in the former case, the same action,“ask_a”, is associated with the lines a, b and c.

Accordingly, in a case where an action identified by the ^(2nd) bestalpha vector for the corresponding belief state among the set of thetop-1^(st) alpha vectors for each belief state is the same as thatidentified by the best alpha vector for the corresponding belief stateamong the set of the top-1^(st) alpha vectors for each belief state, adifferent action cannot be selected using the graph (903) due toconstraints in execution-time process of the POMDP model.

With reference now to FIG. 9D, FIG. 9D illustrates an example of a graphrepresenting the 2^(nd) best action for the corresponding belief state,among a set of the actions corresponding to the set of the top-1^(st)alpha vector for each of the belief states.

The graph (904) corresponds to the graph (901) described in FIG. 9A,except that the bold combined lines and the bold combined dot-lines areillustrated. A table (984) corresponds to the table (981) described inFIG. 9A. The alpha vectors in the table (984) corresponds to those inthe table (981) described in FIG. 9A.

In the graph (904), the bold combined dot-lines corresponds to the boldcombined lines described in FIG. 9B, where the dot-line described in thegraph (904) are shown for the purpose of comparing this bold combinedlines with the bold combined lines in the graph (902) described in FIG.9B.

In the graph (904), the bold combined lines show the 2^(nd) best actionfor the corresponding belief state, among a set of the actionsassociated with the set of the top-1^(st) alpha vectors for each beliefstate. This 2^(nd) best action is different with the best action for thecorresponding belief state, among the set of the actions associated withthe set of the top-1^(st) alpha vectors for each belief state. This bestaction is the same as the best alpha vector (shown in the bold combineddot-line in the graph (904)) for the corresponding belief state amongthe set of the top-1^(st) alpha vectors for each belief state. Thesebold combined lines also correspond to a policy. From the left to rightin the bold combined lines, each part on the bold combined linescorresponding to the alpha vectors b, d, e, and c is selected as the2^(nd) best action (or the policy) for the corresponding belief state,among the set of the actions associated with the set of the top-1^(st)alpha vectors for each belief state. Each of the alpha vectors b and cis associated with the same action, “ask_a”, and, therefore, each parton the bold combined lines corresponding to the alpha vectors b and c isassociated with the same action, “ask_a”. The alpha vector d isassociated with the action, “do_save”, and, therefore, the part on thebold combined lines corresponding to the alpha vector d is associatedwith the action, “do_save”. The alpha vector e is associated with theaction, “do_delete”, and, therefore, the part on the bold combined linescorresponding to the alpha vector e is associated with the action,“do_delete”.

Accordingly, the 2^(nd) best action for the corresponding belief state,among the set of the actions associated with the set of the top-1^(st)alpha vectors for each belief state is provided according to the priorart, as illustrated in the graph (904).

According to the graph (904), in a case where the best actions among theset of the actions associated with the set of the top-1^(st) alphavectors for each of belief states is not selected due to constraints inexecution-time process of the POMDP model, the 2^(nd) best action forthe corresponding belief state, among actions associated with the set ofthe top-1^(st) alpha vectors for each belief state is selected as apolicy. Although the 2^(nd) best action for the corresponding beliefstate, among the set of the actions associated with the set of thetop-1^(st) alpha vectors for each belief state is different from thebest action for the corresponding belief state, among the set of theactions associated with the set of the top-1^(st) alpha vectors for eachbelief state and, therefore, it is not said that this 2^(nd) best actionis not selected due to the constraints s in execution-time process ofthe POMDP model, but the value of expected long term cumulative rewardsfor this 2^(nd) best action is lower than that for this best action and,therefore, this 2^(nd) best action is not an appropriated selection.

Comparing, from the left to right in the graph (904), the bold combinedlines with the bold combined dot-lines, the action, “ask_a”,corresponding to the part b on the bold combined lines is selectedinstead of the action, “do_save”, corresponding to the part d on thebold combined dot-lines; the action, “do_save”, corresponding to thepart d on the bold combined lines is selected instead of the action,“ask_a”, corresponding to the part b on the bold combined dot-lines andthe action, “ask_a”, corresponding to the part b on the bold combineddot-lines; the action, “do_delete”, corresponding to the part e on thebold combined lines is selected instead of the action, “ask_a”,corresponding to the part b on the bold combined dot-lines and theaction, “ask_a”, corresponding to the part c on the bold combineddot-lines; and the action, “ask_a”, corresponding to the part c on thebold combined lines is selected instead of the action, “do_delete”,corresponding to the part e on the bold combined dot-lines.

Accordingly, it may be difficult to cope with, using the graph (904), asituation where the 2^(nd) best action for the corresponding beliefstate, among the set of the actions associated with the set of thetop-1^(st) alpha vectors for each belief state is unable to be selecteddue to lower expected long term cumulative rewards.

Hereinafter, an embodiment of the present invention will be describedwith reference to the following FIGS. 2A and 2B, FIG. 3, FIGS. 4A and4B, FIG. 5, FIGS. 6A to 6C and FIG. 7.

Embodiments of a block/flow diagram illustrating a process for buildinga POMDP model and for selecting, using the POMDP model, an action aredescribed in each of FIGS. 2A, 2B and 3, and FIGS. 4A, 4B and 5.

The flowcharts described in FIGS. 2A, 2B and 3 are illustrated in a casewhere the POMDP model having a set of top-k alpha vectors for each ofbelief states is used, where k is an integer of two or more, and, then,an action identified by the 2^(nd) best alpha vector for the currentbelief state, among the top-k alpha vectors for each belief state isselected and executed. Meanwhile, the flowcharts described in FIGS. 4A,4B and 5 are illustrated in a case where the MPODP model having a set oftop-k actions for each belief state is used, where actions in the set oftop-k actions are different from each other, k is an integer of two ormore, and, then, the 2^(nd) best action for the current belief state,among the set of the actions associated with the set of the top-k alphavectors for each belief state is selected and executed.

With reference now to FIG. 2A, FIG. 2A illustrates one embodiment of aprocess for building a POMDP model having a set of top-k alpha vectorsfor each belief state, each of the top-k alpha vectors maximizingexpected long-term cumulative rewards in each time-step, where k is aninteger of two or more.

A system, such as the computer (101), performs each of the stepsdescribed in FIG. 2A. The system may be implemented as a single computeror a plurality of computers.

In step 201, the system starts the process for building the POMDP modeldescribed above.

In step 202, the system reads, into a memory, schematic probability dataas input data from a storage (291) for building the POMDP model. Theinput data may be S, A, T, R, O and Z described above.

In step 203, the system calculates, from the input data, a set of top-kalpha vectors for the POMPD, using a POMDP solver, to build the POMDPmodel having the set of the top-k alpha vectors, where the set of thetop-k alpha vectors are calculated for each belief state. A user who maydecide a value, k, knows how many top actions are necessary. In otherwords, the value of k may be determined by how many alternative alphavectors are required in an execution-time process of the POMDP model,where the alternative alpha vectors are calculated in each belief state.The alpha vectors may be calculated using, for example, but not limitedto a point-based value iteration algorithm with modifying it so that thetop-k alpha vectors for each belief state are maintained withoutpruning. The details of the step 203 will be further described belowwith reference to FIG. 2B.

In step 204, the system terminates the process described above.

With reference now to FIG. 2B, FIG. 2B illustrates one embodiment of adetailed process of the step 203 described in FIG. 2A.

In step 211, the system starts the process of the step 203.

In step 212, the system calculates, from the input data, alpha vectorsas an initial value and then inputs the calculated alpha vectors into aset A.

In step 213, the system calculates each alpha vector for each beliefstate for a next step (or a next time) and then updates the set A withthe calculated vectors, where a parameter, N, is set to one.

In step 214, the system selects, from the set A, top-1^(st) alphavectors.

In step 217, the system moves the selected alpha vectors to a set B inorder to remove the selected alpha vectors from the set A and then N isincremented by one or is set to N=N+1.

In step 218, the system determines whether N is larger than k or not. Ifthe determination is positive (e.g., yes), the system proceeds to step219. Meanwhile, if the determination is negative (e.g., no), the systemproceeds back to step 214 to repeat steps 214 to 218.

In step 219, the system determines whether each of the alpha vectors inthe set B is converged or not. If the determination is positive, thesystem proceeds to step 220. Meanwhile, if the determination isnegative, the system proceeds to step 221.

In step 220, the system outputs the set B into storage (292). The set Bis a set of alpha vectors which were calculated without pruning of top-kalpha vectors. The set B is a policy as the POMDP model. In the set B,each alpha vectors is associated with an action. Each action may beprepared so that an action is not subject to a constraint in theexecution-time process of the POMDP model that exactly the same questionis not repeated. For example, in a case where an action is a naturalconversation dialog, actions having similar meaning but differentexpressions are prepared. The different alpha vectors may be associatedwith the same action. Each action may be prepared so that an action isnot subject to a constraint in the execution-time process of the POMDPmodel that exactly the same question is not repeated. For example, in acase where an action is a natural conversation dialog, actions havingsimilar meaning but different expressions are prepared.

In step 221, the system makes the set A empty and then the system setsall alpha vectors in the set B to the set A. After, the system proceedsto step 213 in order to repeat steps 213, 214 and 217 to 219.

In step 222, the system terminates the process described above.

With reference now to FIG. 3, FIG. 3 illustrates one embodiment of aprocess for selecting an action, using the POMDP model which was builtaccording to the flowchart described in FIGS. 2A and 2B. This POMDPmodel has a set of top-k alpha vectors for each belief state.

A system, such as the computer (101), performs each of the stepsdescribed in FIG. 3. The system may be implemented as a single computeror a plurality of computers. The system used in FIG. 3 may be the sameor different from that used in FIGS. 2A and 2B.

In step 311, the system starts the process described above.

In step 312, the system reads, into a memory, the POMDP model from thestorage (292) and then begins an execution of the POMDP model, where aparameter, N, is set to one.

In step 313, the system selects a top-N alpha vector which maximizesexpected long-term cumulative rewards for a current belief state toidentify an action associated with the selected alpha vector.

In step 314, the system determines whether the selected action isexecutable or not. If the determination is positive, the system proceedsto step 315. Meanwhile, if the determination is negative, the systemproceeds to step 318 to increment N by 1 or set N=N+1

The determination is made using a constraint which may be determined bya user in advance. The user may determine the constraint by consideringa situation where the POMDP model is used. The situation may be forexample, but not limited to, an operation of the robot or an operationdone by natural conversation dialog. For example, the constraint may bea constraint which restricts selecting the same actions in succession,in a case where the POMDP model is used for a natural conversationdialog.

In step 315, the system executes the selected action and then resets N.

In step 316, the system updates the belief state.

In step 317, the system determines whether the belief state satisfies anend condition or not. The end condition may be, for example, but notlimited to, a condition that a goal of a problem is reached. In a casewhere a goal of a problem is an action for saving or deleting a task, itis an end condition to reach a belief state for executing a saving ordeletion of a task. If the determination is positive, the systemproceeds to a final step 321. Meanwhile, if the determination isnegative, the system proceeds back to step 313.

In step 318, the system increments N by 1 or sets N=N+1.

In step 319, the system determines whether N is larger than k or not. Ifthe determination is positive, the system proceeds to step 320.Meanwhile, if the determination is negative, the system proceeds back tostep 313.

In step 320, the system terminates the process abnormally, since thereis no executable action for the current belief state.

In step 321, the system terminates the process described above.

According to an embodiment of the present invention, even when an actionassociated with the best alpha vectors for the current belief state,among the top-k action IDs for each belief state cannot be selected dueto constraints in execution-time process of the POMDP model, a 2^(nd)best action among a set of the top-k action IDs for each belief statecan be selected, where k is an integer of two or more.

With reference now to FIG. 4A, FIG. 4A illustrates another embodiment ofa process for building a POMDP model having a set of top-k actionsassociated with a set of alpha vectors for each belief state, each ofthe top-k actions maximizing expected long-term cumulative rewards ineach time-step, where k is an integer of two or more.

A system, such as the computer (101), performs each of the stepsdescribed in FIG. 4A. The system may be implemented as a single computeror a plurality of computers.

In step 401, the system starts the process for building a POMDP modeldescribed above.

In step 402, the system reads, into a memory, schematic probability dataas input data from storage (491) for building the POMDP model. The inputdata may be S, A, T, R, O and Z described above.

In step 403, the system calculates, from the input data, a set of top-kactions associated with a set of alpha vectors for the POMPD, using aPOMDP solver, to build the POMDP model, where the top-k alpha vectorsare calculated for each belief state. Actions in the set of top-kactions are different from each other. A user who may decide a value, k,knows how many top actions are necessary. In other words, the value of kmay be determined by how many alternative actions are required in anexecution-time process of the POMDP model, where the alternative actionsare calculated in each belief state. The alpha vectors may be calculatedusing, for example, but not limited to a point-based value iterationalgorithm with modifying it so that the top-k alpha vectors aremaintained without pruning. The details of the step 403 will be furtherdescribed below with reference to FIG. 4B.

In step 404, the system terminates the process described above.

With reference now to FIG. 4B, FIG. 4B illustrates one embodiment of theprocess of the step 403 described in FIG. 4A.

In step 411, the system starts the process of the step 403

Each of steps 412 to 414 corresponds to each of steps 212 to 214described in FIG. 2B, respectively. Accordingly, the overlappingexplanations of steps 412 to 414 will be omitted here.

In step 415, the system determines whether actions associated with theselected alpha vectors exist in a set B or not. If the determination ispositive, the system proceeds to step 416. Meanwhile, if thedetermination is negative, the system proceeds to step 417. In the setB, the number of an alpha vector associated with the same action becomesat most one, according to a condition described in step 415.

In step 416, the system removes the selected alpha vectors from the setA.

In step 417, the system moves the selected alpha vectors to the set B inorder to remove the selected alpha vectors from the set A and then N isincremented by one or is set to N=N+1.

Each of steps 418 to 420 corresponds to each of steps 218 to 220described in FIG. 2B, respectively. Accordingly, the overlappingexplanations of steps 418 to 420 will be omitted here.

In step 421, the system makes the set A empty and then the system setsall alpha vectors in the set B to the set A. After, the system proceedsto step 413 in order to repeat steps 413 to 419.

In step 422, the system terminates the process described above.

The POMPD includes the set of top-k actions associated with the set ofalpha vectors for each belief state, where actions in the set of top-kactions are different from each other. Accordingly, in an execution-timeprocess of the POMDP model, a different action is selected and executed,according to the process described in FIG. 4B.

With reference now to FIG. 5, FIG. 5 illustrates another embodiment of aprocess for selecting an action, using the POMDP model, which was builtaccording to the flowchart described in FIGS. 4A and 4B. This POMDPmodel has a set of top-k actions associated with the set of alphavectors for each belief state.

A system, such as the computer (101), performs each of the stepsdescribed in FIG. 5. The system may be implemented as a single computeror a plurality of computers. The system used in FIG. 5 may be the sameor different from that used in FIGS. 4A and 4B.

In step 511, the system starts the process described above.

In step 512, the system reads, into a memory, the POMDP model from thestorage (492) and then begins an execution of the POMDP model, where aparameter, N, is set to one.

In step 513, the system selects a top-N action associated with an alphavector to identify an action associated with the selected alpha vector,the top-N action maximizing expected long-term cumulative rewards for acurrent belief state.

Each of steps 514 to 520 corresponds to each of steps 314 to 320described in FIG. 3, respectively. Accordingly, the overlappingexplanations of steps 514 to 520 will be omitted here.

In step 521, the system terminates the process described above.

According to an embodiment of the present invention, the 2^(nd) bestaction for the corresponding belief state, among a set of actionsassociated with top-k action IDs for the current belief state can beselected, where k is an integer of two or more. Accordingly, the systemcan cope with a constraint which is found in the execution-time processof the POMDP model, using the 2^(nd) best action for the correspondingbelief state.

FIGS. 6A to 6C each illustrate a graph representing a set of thetop-2^(nd) (or k=2) alpha vectors generated according to an embodimentof the present invention.

For generating the set of the top-2^(nd) (or k=2) alpha vectorsdescribed above, the input data illustrated in FIG. 8 is used, whereinput data was also used for generating the set of the top-1^(st) alphavectors after pruning according to the prior art.

According to an embodiment of the present invention, alpha vectors otherthan the set of the top-k alpha vectors for each belief state are prunedduring building the POMDP model, where k is an integer of two or more.Accordingly, alpha vectors which are pruned during building the POMDPmodel generated according to an embodiment of the present invention aredifferent from alpha vectors which are pruned during building the POMDPmodel generated according to the prior art where alpha vectors otherthan the set of the top-1^(st) alpha vectors for each belief state arepruned.

With reference now to FIG. 6A, FIG. 6A illustrates an embodiment of agraph representing a set of the top-2^(nd) (or k=2) alpha vectors foreach belief state, the graph being generated according to an embodimentof the present invention and illustrates the best alpha vector with boldcombined dot-lines among the set of the top-2^(nd) (or k=2) alphavectors.

A table (681) denotes the top-2^(nd) (or k=2) alpha vectors for eachbelief state, e.g., the outputs of the POMDP solver. The top-2^(nd)alpha vectors for each belief state are results after 664 updates andobtained by pruning alpha vectors other than the top-2^(nd) alphavectors for each belief state. The alpha vectors are iterativelycalculated until alpha vectors are converged, and then the top-2^(nd)alpha vectors for each belief state are selected or alpha vectors otherthan the top-2^(nd) alpha vectors for each belief state are prunedduring building the POMDP model.

The table (681) shows the top-2^(nd) alpha vectors for each beliefstate, e.g., eight alpha vectors a, b, c, d, e, f, g and h. In the eightalpha vectors, five alpha vectors a, b, c, d and e are the same as thosedescribed in the policy (981) described in FIG. 9A. Accordingly, thealpha vectors f, g and h as the top-2^(nd) alpha vectors for each beliefstate remain without pruning, according to an invention of the presentinvention.

Each of the eight alpha vectors is associated with a respective action,as follows: each of the alpha vectors a, b and c is associated with thesame action, “ask_a”; the alpha vector d is associated with the action,“do_save”; the alpha vector e is associated with the action,“do_delete”, and each of the alpha vectors f, g and h is associated withthe same action, “ask_b”.

The graph (601) shows an x-axis representing “belief states”, e.g.,“save (S)” and “delete (D)” and a y-axis representing the expectedcumulative rewards, V*(b).

In the graph, the lines a, b, c, d, e, f, g and h correspond to thealpha vectors a, b, c, d, e, f, g and h, respectively. Accordingly, thelines a, b, c, d, e, f, g and h are associated with the actions,“ask_a”, “ask_a”, “ask_a”, “do_save”, “do_delete”, “ask_b”, “ask_b” and“ask_b”, respectively.

In the graph (601), the bold combined dot-lines show the best alphavector for the corresponding belief state, among the set of thetop-2^(nd) alpha vectors for each belief state. The bold combineddot-lines in the graph (601) correspond to the bold combined lines inthe graph (902) described in FIG. 9B.

The bold combined dot-lines in the graph (601) show the best alphavector for the corresponding belief state among the set of thetop-2^(nd) alpha vectors for each belief state described in FIG. 6A.

With reference now to FIG. 6B, FIG. 6B illustrates an embodiment of agraph representing a set of the top-2^(nd) (or k=2) alpha vectors foreach belief state, the set being generated according to an embodiment ofthe flowchart described in FIGS. 2A, 2B and 3 and illustrates, with boldcombined lines, the 2^(nd) best alpha vector for the correspondingbelief state, among the among the set of the top-2^(nd) (or k=2) alphavectors for each belief state.

The graph (602) corresponds to the graph (601) described in FIG. 6A,except that the bold combined lines are illustrated. A table (682)corresponds to the table (681) described in FIG. 6A. The alpha vectorsin the table (682) correspond to those in the table (681) described inFIG. 6A.

In the graph (602), the bold combined lines show the 2^(nd) best alphavector for the corresponding belief state, among the set of thetop-2^(nd) alpha vectors for each belief state. From the left to rightin the bold combined lines, each part on the bold combined linescorresponds to alpha vectors b, d, g, a, b, f, c, a, h, e and c isselected as the 2^(nd) best alpha vector for the corresponding beliefstate, among the set of the top-2^(nd) alpha vectors for each beliefstate. Each of the alpha vectors b, a and c is associated with the sameaction, “ask_a”, and, therefore, the part on each of the bold combinedlines corresponding to the alpha vectors b, a and c is associated withthe same action, “ask_a”. The alpha vector d is associated with theaction, “do_save”, and, therefore, the part on the bold combined linescorresponding to the alpha vector d is associated with the action,“do_save”. Each of the alpha vector g, f and h is associated with thesame action, “ask_b”, and, therefore, the part on the bold combinedlines corresponding to the alpha vectors g, f and h is associated withthe same action, “ask_b”. The alpha vector e is associated with theaction, “do_delete”, and, therefore, the part on the bold combined linescorresponding to the alpha vector e is associated with the action,“do_delete”.

Accordingly, the 2^(nd) best alpha vector for the corresponding beliefstate, among the set of the top-2^(nd) alpha vectors for each beliefstate, is provided according to an embodiment of the present invention,as illustrated in the graph (602).

Comparing, from the left to right in the graph (602), the bold lineswith the bold combined dot-lines, the action, “ask_b”, corresponding tothe part b on the bold combined lines is selected instead of the action,“do_save”, corresponding to the part d on the bold combined dot-liens;the action, “do_save”, corresponding to the part d on the bold combinedlines and the action, “ask_b”, corresponding to the part g on the boldcombined lines are selected instead of the action, “ask_a”,corresponding to the part b on the bold combined dot-liens; the action,“ask_a”, corresponding to the part b on the bold combined lines, theaction, “ask_b”, corresponding to the part f on the bold combined linesand the action, “ask_a”, corresponding to the part c on the boldcombined lines are selected instead of the action, “ask_a”,corresponding to the part a on the bold combined dot-liens; the action,“ask_a”, corresponding to the part a on the bold combined lines, theaction, “ask_b”, corresponding to the part h on the bold combined linesand the action, “do_delete”, corresponding to the part e on the boldcombined lines are selected instead of the action, “ask_a”,corresponding to the part c on the bold combined dot-liens; the action,“ask_a”, corresponding to the part c on the bold combined liens isselected instead of the action, “do_delete”, corresponding to the part eon the bold combined dot-lines.

In a case where the 2^(nd) best alpha vector for the correspondingbelief state, among the set of the top-2^(nd) alpha vectors for eachbelief state is selected as illustrated in the graph (602), the sameaction may be selected on the parts b, a, b, c, a and c from the left toright on the bold combined lines in the graph (602), compared to thebold combined dot-lines. Meanwhile, a different action may be selectedon the parts d, g, f, h, and e from the left to right on the boldcombined lines in the graph (602), compared to the bold combineddot-lines. This is because, in the former case, the same action,“ask_a”, is associated with the lines a, b and c.

Accordingly, in the latter case, a different action identified by the2^(nd) best alpha vector for the corresponding belief state, among theset of the top-2^(nd) alpha vectors for each belief state is selected asthe policy.

With reference now to FIG. 6C, FIG. 6C illustrates an embodiment of agraph representing a set of the top 2^(nd) (or k=2) alpha vectors foreach of belief states, the set being generated according to the anotherembodiment of the flowchart described in FIGS. 4A, 4B and 5 andillustrates, with bold combined lines, the 2^(nd) best action for thecorresponding belief state, among a set of actions associated with theset of the top 2^(nd) (or k=2) alpha vectors for each belief state.

The graph (603) corresponds to the graph (601) described in FIG. 6A,except that the bold combined lines are illustrated. A table (683)corresponds to the table (681) described in FIG. 6A. The alpha vectorsin the table (683) correspond to those in the table (681) described inFIG. 6A.

In the graph (603), the bold combined lines show the 2^(nd) best actionfor the corresponding belief state, among the set of actions associatedwith the set of the top-2^(nd) alpha vectors for each belief state. Fromthe left to right in the bold combined lines, each part on the boldcombined lines corresponds to alpha vectors b, d, g, f, h, e and c isselected as the 2^(nd) best action for the corresponding belief state,among the set of actions associated with the set of the top-2^(nd) alphavectors for each belief state. Each of the alpha vectors b and c isassociated with the action, “ask_a”, and, therefore, the part on each ofthe bold combined lines corresponding to the alpha vectors b and c isassociated with the same action, “ask_a”. The alpha vector d isassociated with the action, “do_save”, and, therefore, the part on thebold combined lines corresponding to the alpha vector d is associatedwith the action, “do_save”. Each of the alpha vector g and h isassociated with the action, “ask_b”, and, therefore, the part on thebold combined lines corresponding to the alpha vectors g and h isassociated with the action, “ask_b”. The alpha vector e is associatedwith the action, “do_delete”, and, therefore, the part on the boldcombined lines corresponding to the alpha vector e is associated withthe action, “do_delete”.

Accordingly, the 2^(nd) best action for the corresponding belief state,among the set of actions associated with the set of the top-2^(nd) alphavectors for each belief state, is provided according to anotherembodiment of the present invention, as illustrated in the graph (603).

Comparing, from the left to right in the graph (603), the bold lineswith the bold combined dot-lines, the action, “ask_b”, corresponding tothe part b on the bold combined lines is selected instead of the action,“do_save”, corresponding to the part d on the bold combined dot-liens;the action, “do_save”, corresponding to the part d on the bold combinedlines and the action, “ask_b”, corresponding to the part g on the boldcombined lines are selected instead of the action, “ask_a”,corresponding to the part b on the bold combined dot-liens; the action,“ask_b”, corresponding to the part g on the bold combined lines, theaction, “ask_b”, corresponding to the part f on the bold combined linesand the action, “ask_b”, corresponding to the part h on the boldcombined lines are selected instead of the action, “ask_a”,corresponding to the part a on the bold combined dot-liens; the action,“ask_b”, corresponding to the part h on the bold combined lines and theaction, “do_delete”, corresponding to the part e on the bold combinedlines are selected instead of the action, “ask_a”, corresponding to thepart c on the bold combined dot-liens; and the action, “ask_a”,corresponding to the part c on the bold combined liens is selectedinstead of the action, “do_delete”, corresponding to the part e on thebold combined dot-lines.

In a case where the 2^(nd) best action for the corresponding beliefstate, among the set of actions associated with the set of thetop-2^(nd) alpha vectors for each belief state is selected asillustrated in the graph (602), a different action is selected. The2^(nd) best action for the corresponding belief state, among the set ofactions associated with the set of the top-2^(nd) alpha vectors for eachbelief state, is different from the best action for the correspondingbelief state, among the set of actions associated with the set of thetop-2^(nd) alpha vectors for each belief state. Further, the number ofthis 2^(nd) best action for the corresponding belief state is notnecessarily same as that of this best action for the correspondingbelief state, among the set of actions associated with the set of thetop-2^(nd) alpha vectors for each belief state.

FIG. 7 illustrates an embodiment of an overall functional block diagramof a system.

With reference now to FIG. 7, FIG. 7 illustrates an embodiment of anoverall functional block diagram of a system used in accordance with anembodiment of the flowchart described in either FIGS. 2A, 2B and 3 orFIGS. 4A, 4B and 5.

A system (701) may be used for building a POMDP model. A system (702)may be used for selecting an action, using the POMDP model which wasbuilt by the system (701). The system (701) may be the same or differentfrom the system (702).

The system (701) includes a receiving section (711) and a POMDP buildingsection (712).

The receiving section (711) reads or receives, into a memory, stochasticprobability data as input data from a storage (791) for building a POMDPmodel.

The receiving section (711) may perform step 202 described in FIG. 2A orstep 402 described in FIG. 4A.

The POMDP building section (712) iteratively calculates, in a POMDPsolver, alpha vectors maximizing expected long-term cumulative rewardsin each time-step.

The POMDP building section (712) further selects top-k action IDs whichmaximize expected long-term cumulative rewards in each time-step. Thetop-k action IDs may be top-k alpha vectors, each of the top-k alphavectors having an associated action; or identifiers of top-k actionsassociated with the set of alpha vectors, where k is an integer of twoor more. Accordingly, k may be, for example, 2, 3, 4, 5, or more.

In a case where the top-k action IDs are top-k alpha vectors, the POMDPbuilding section (712) may select top-k alpha vectors among thecalculated alpha vectors. This may be similar in that the system prunesalpha vectors other than the top-k alpha vectors.

In a case where the top-k action IDs are identifiers of top-k actionsassociated with the set of alpha vectors, the POMDP building section(712) selects top-k actions among a set of actions associated with theset of the calculated alpha vectors. This may be similar in that thesystem prunes alpha vectors other than the alpha vectors associated withthe top-k actions.

The POMDP building section (712) continues the calculation of the alphavectors until alpha vectors are converged.

The POMDP building section (712) stores the POMDP model into a storage(792).

The POMDP building section (712) may perform step 203 described in FIG.2A and all steps described in FIG. 2B or step 403 described in FIG. 4Aand all steps described in FIG. 4B.

The system (702) comprises a reading section (721), a detecting section(722) and a selecting and executing section (723).

The reading section (721) may read, into a memory, the POMDP model fromthe storage (792).

The reading section (721) may perform step 312 described in FIG. 3 orstep 512 described in FIG. 5.

The detecting section (722) detects a situation where an actionidentified by the best action ID among the top-k action IDs for acurrent belief state is unable to be selected due to constraints inexecution-time process of the POMDP model.

The detecting section (722) may perform steps 314, 318 and 319 describedin FIG. 3 or steps 514, 518 and 519 described in FIG. 5.

The selecting and executing section (723) selects and executes an actionidentified by the second best action ID among the top-k action IDs forthe current belief state in response to a detection of the abovesituation.

The selecting and executing section (723) may perform steps 313 and 315to 317 described in FIG. 3 or steps 513 and 515 to 517 described in FIG.5.

The present invention may be a method, a system, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

By the expression “a/one” should be understood as “at least one”.

By the expression “comprise(s)/comprising a/one” should be understood as“comprise(s)/comprising at least one”.

By the expression “comprise(s)/comprising” should be understood as“comprise(s)/comprising at least”.

By the expression “/” should be understood as “and/or”.

What is claimed is:
 1. A computer-implemented method for selecting anaction, the method comprising: reading, into a memory, a PartiallyObserved Markov Decision Process (POMDP) model, the POMDP model havingtop-k action IDs for each belief state, the top-k action IDs maximizingexpected long-term cumulative rewards in each time-step, and k being aninteger of two or more; in the execution-time process of the POMDPmodel, detecting a situation where an action identified by a first bestaction ID among the top-k action IDs for a current belief state isunable to be selected due to constraint; and selecting and executing anaction identified by a second best action ID among the top-k action IDsfor the current belief state in response to a detection of thesituation.
 2. The method according to claim 1, wherein the top-k actionIDs are top-k alpha vectors and each of the top-k alpha vectors have anassociated action.
 3. The method according to claim 1, wherein the top-kaction IDs are identifiers of top-k actions associated with alphavectors.
 4. The method according to claim 2, wherein alpha vectors otherthan the top-k alpha vectors are pruned when the top-k alpha vectors areselected.
 5. The method according to claim 3, wherein alpha vectorsother than the alpha vectors associated with the top-k actions arepruned when the top-k actions are selected.
 6. The method according toclaim 2, wherein the top-k alpha vectors are iteratively calculateduntil the alpha vectors are converged.
 7. The method according to claim3, wherein the alpha vectors are iteratively calculated until the alphavectors are converged.
 8. The method according to claim 2, wherein the kis determined by how many alternative alpha vectors are required in theexecution-time process of the POMDP model.
 9. The method according toclaim 3, wherein the k is determined by how many alternative actions arerequired in the execution-time process of the POMDP model.
 10. Themethod according to claim 1, wherein the constraint restricts selectionof a same action in succession.
 11. The method according to claim 1,wherein an action not subject to the constraint in the execution-timeprocess of the POMDP model is prepared.
 12. The method according toclaim 1, wherein actions having similar meaning but differentexpressions are prepared when an action is a natural conversationdialog.